\hypertarget{classsc2_1_1_debug_interface}{}\section{sc2\+:\+:Debug\+Interface Class Reference}
\label{classsc2_1_1_debug_interface}\index{sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}}


{\ttfamily \#include $<$sc2\+\_\+interfaces.\+h$>$}

\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classsc2_1_1_debug_interface_a3b55d464a9bbf3e4225927cf6f6ee7cb}\label{classsc2_1_1_debug_interface_a3b55d464a9bbf3e4225927cf6f6ee7cb}} 
enum {\bfseries App\+Test} \{ {\bfseries hang} = 1, 
{\bfseries crash} = 2, 
{\bfseries exit} = 3
 \}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual void \hyperlink{classsc2_1_1_debug_interface_a3edaf8b4f0e0155f3b8eaf2cf672ee29}{Debug\+Text\+Out} (const std\+::string \&out, \hyperlink{structsc2_1_1_color}{Color} color=Colors\+::\+White)=0
\item 
virtual void \hyperlink{classsc2_1_1_debug_interface_a5044b5772c931b1115fd3ec40682a257}{Debug\+Text\+Out} (const std\+::string \&out, const \hyperlink{structsc2_1_1_point2_d}{Point2D} \&pt\+\_\+virtual\+\_\+2D, \hyperlink{structsc2_1_1_color}{Color} color=Colors\+::\+White)=0
\item 
virtual void \hyperlink{classsc2_1_1_debug_interface_a8037bf4a4941d49c372c6e73dfe4663c}{Debug\+Text\+Out} (const std\+::string \&out, const \hyperlink{structsc2_1_1_point3_d}{Point3D} \&pt3D, \hyperlink{structsc2_1_1_color}{Color} color=Colors\+::\+White)=0
\item 
virtual void \hyperlink{classsc2_1_1_debug_interface_a3d2232ee51265c7b97f7692ec7918ca1}{Debug\+Line\+Out} (const \hyperlink{structsc2_1_1_point3_d}{Point3D} \&p0, const \hyperlink{structsc2_1_1_point3_d}{Point3D} \&p1, \hyperlink{structsc2_1_1_color}{Color} color=Colors\+::\+White)=0
\item 
virtual void \hyperlink{classsc2_1_1_debug_interface_ab4e7e911795e9e59fca953b5c6d71b22}{Debug\+Box\+Out} (const \hyperlink{structsc2_1_1_point3_d}{Point3D} \&p\+\_\+min, const \hyperlink{structsc2_1_1_point3_d}{Point3D} \&p\+\_\+max, \hyperlink{structsc2_1_1_color}{Color} color=Colors\+::\+White)=0
\item 
virtual void \hyperlink{classsc2_1_1_debug_interface_a9c4b50b0c3b07cd77c4b9c98afc689b0}{Debug\+Sphere\+Out} (const \hyperlink{structsc2_1_1_point3_d}{Point3D} \&p, float r, \hyperlink{structsc2_1_1_color}{Color} color=Colors\+::\+White)=0
\item 
virtual void \hyperlink{classsc2_1_1_debug_interface_a74f53226964fac1ff67f071b09497a8a}{Debug\+Create\+Unit} (\hyperlink{classsc2_1_1_s_c2_type}{Unit\+Type\+ID} unit\+\_\+type, const \hyperlink{structsc2_1_1_point2_d}{Point2D} \&p, uint32\+\_\+t player\+\_\+id=1, uint32\+\_\+t count=1)=0
\item 
virtual void \hyperlink{classsc2_1_1_debug_interface_afc45d89e7cd2bc02c9be1808a0041be2}{Debug\+Kill\+Unit} (Tag tag)=0
\item 
\mbox{\Hypertarget{classsc2_1_1_debug_interface_ab25a7057a3e3ee4ce4895ffe6b9f665a}\label{classsc2_1_1_debug_interface_ab25a7057a3e3ee4ce4895ffe6b9f665a}} 
virtual void \hyperlink{classsc2_1_1_debug_interface_ab25a7057a3e3ee4ce4895ffe6b9f665a}{Debug\+Show\+Map} ()=0
\begin{DoxyCompactList}\small\item\em Makes the entire map visible, i.\+e., removes the fog-\/of-\/war. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classsc2_1_1_debug_interface_af232f60819f07b1c6da87ed43da460fa}\label{classsc2_1_1_debug_interface_af232f60819f07b1c6da87ed43da460fa}} 
virtual void \hyperlink{classsc2_1_1_debug_interface_af232f60819f07b1c6da87ed43da460fa}{Debug\+Enemy\+Control} ()=0
\begin{DoxyCompactList}\small\item\em Enables commands to be issued to enemy units. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classsc2_1_1_debug_interface_a21a7588fdc3bceaa1ed7613978826bc6}\label{classsc2_1_1_debug_interface_a21a7588fdc3bceaa1ed7613978826bc6}} 
virtual void \hyperlink{classsc2_1_1_debug_interface_a21a7588fdc3bceaa1ed7613978826bc6}{Debug\+Ignore\+Food} ()=0
\begin{DoxyCompactList}\small\item\em Disables the food check. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classsc2_1_1_debug_interface_a72927b9269c87edb59c9365cfc973000}\label{classsc2_1_1_debug_interface_a72927b9269c87edb59c9365cfc973000}} 
virtual void \hyperlink{classsc2_1_1_debug_interface_a72927b9269c87edb59c9365cfc973000}{Debug\+Ignore\+Resource\+Cost} ()=0
\begin{DoxyCompactList}\small\item\em Disables resource checks. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classsc2_1_1_debug_interface_a2043a4888715616d85de8509661b4694}\label{classsc2_1_1_debug_interface_a2043a4888715616d85de8509661b4694}} 
virtual void \hyperlink{classsc2_1_1_debug_interface_a2043a4888715616d85de8509661b4694}{Debug\+Give\+All\+Resources} ()=0
\begin{DoxyCompactList}\small\item\em Gives a bunch of minerals and gas. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classsc2_1_1_debug_interface_a988bfcc598bc0b6ab0a790a7d50926ef}\label{classsc2_1_1_debug_interface_a988bfcc598bc0b6ab0a790a7d50926ef}} 
virtual void \hyperlink{classsc2_1_1_debug_interface_a988bfcc598bc0b6ab0a790a7d50926ef}{Debug\+God\+Mode} ()=0
\begin{DoxyCompactList}\small\item\em Makes the units of a player indestructible. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classsc2_1_1_debug_interface_ae4d0b5c80f57c70875dcf024b80939a9}\label{classsc2_1_1_debug_interface_ae4d0b5c80f57c70875dcf024b80939a9}} 
virtual void \hyperlink{classsc2_1_1_debug_interface_ae4d0b5c80f57c70875dcf024b80939a9}{Debug\+Ignore\+Mineral} ()=0
\begin{DoxyCompactList}\small\item\em Ignores mineral costs. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classsc2_1_1_debug_interface_a6ed235dae46cd476db8d0fe7d94eb74a}\label{classsc2_1_1_debug_interface_a6ed235dae46cd476db8d0fe7d94eb74a}} 
virtual void \hyperlink{classsc2_1_1_debug_interface_a6ed235dae46cd476db8d0fe7d94eb74a}{Debug\+No\+Cooldowns} ()=0
\begin{DoxyCompactList}\small\item\em Cooldowns become instant. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classsc2_1_1_debug_interface_a2391c6d9e93591ec216090eb75cae55e}\label{classsc2_1_1_debug_interface_a2391c6d9e93591ec216090eb75cae55e}} 
virtual void \hyperlink{classsc2_1_1_debug_interface_a2391c6d9e93591ec216090eb75cae55e}{Debug\+Give\+All\+Tech} ()=0
\begin{DoxyCompactList}\small\item\em All tech becomes available. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classsc2_1_1_debug_interface_a1596fbb711cc74437190ef77eb5e99d4}\label{classsc2_1_1_debug_interface_a1596fbb711cc74437190ef77eb5e99d4}} 
virtual void \hyperlink{classsc2_1_1_debug_interface_a1596fbb711cc74437190ef77eb5e99d4}{Debug\+Give\+All\+Upgrades} ()=0
\begin{DoxyCompactList}\small\item\em All upgrades are available. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classsc2_1_1_debug_interface_a75a1c2a43f05b3fcfc310d85882c63f3}\label{classsc2_1_1_debug_interface_a75a1c2a43f05b3fcfc310d85882c63f3}} 
virtual void \hyperlink{classsc2_1_1_debug_interface_a75a1c2a43f05b3fcfc310d85882c63f3}{Debug\+Fast\+Build} ()=0
\begin{DoxyCompactList}\small\item\em Structures and units are built much faster. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classsc2_1_1_debug_interface_a0e14deec5d84d341f4f3aefc29a198d5}\label{classsc2_1_1_debug_interface_a0e14deec5d84d341f4f3aefc29a198d5}} 
virtual void \hyperlink{classsc2_1_1_debug_interface_a0e14deec5d84d341f4f3aefc29a198d5}{Debug\+Set\+Score} (float score)=0
\begin{DoxyCompactList}\small\item\em Sets the scripted \char`\"{}curriculum\char`\"{} score. \end{DoxyCompactList}\item 
virtual void \hyperlink{classsc2_1_1_debug_interface_afba1e9cbd642833e0de4360aba7ff08e}{Debug\+End\+Game} (bool victory=false)=0
\item 
virtual void \hyperlink{classsc2_1_1_debug_interface_a3049f5181825a014b8f05c75af8c254b}{Debug\+Set\+Energy} (float value, Tag tag)=0
\item 
virtual void \hyperlink{classsc2_1_1_debug_interface_aebec7aae013f15f2791dd17af6d9e320}{Debug\+Set\+Life} (float value, Tag tag)=0
\item 
virtual void \hyperlink{classsc2_1_1_debug_interface_a003a4d12d81cfb02078623b255b16d17}{Debug\+Set\+Shields} (float value, Tag tag)=0
\item 
virtual void \hyperlink{classsc2_1_1_debug_interface_aafe669615586b51805c6bf3e9cef7bf1}{Debug\+Move\+Camera} (const \hyperlink{structsc2_1_1_point2_d}{Point2D} \&pos)=0
\item 
virtual void \hyperlink{classsc2_1_1_debug_interface_a9a6fd0d4719dea83de3f5e374127a1da}{Debug\+Test\+App} (App\+Test app\+\_\+test, int delay\+\_\+ms=0)=0
\item 
virtual void \hyperlink{classsc2_1_1_debug_interface_ae08bd0e07c9ed54c61a2f35225b2efb5}{Send\+Debug} ()=0
\end{DoxyCompactItemize}


\subsection{Detailed Description}
\hyperlink{classsc2_1_1_debug_interface}{Debug\+Interface} draws debug text, lines and shapes. Available at any time after the game starts. Guaranteed to be valid when the On\+Step event is called. All debug actions are queued and dispatched when Send\+Debug is called. All drawn primitives continue to draw without resending until another Send\+Debug is called. 

\subsection{Member Function Documentation}
\mbox{\Hypertarget{classsc2_1_1_debug_interface_ab4e7e911795e9e59fca953b5c6d71b22}\label{classsc2_1_1_debug_interface_ab4e7e911795e9e59fca953b5c6d71b22}} 
\index{sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}!Debug\+Box\+Out@{Debug\+Box\+Out}}
\index{Debug\+Box\+Out@{Debug\+Box\+Out}!sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}}
\subsubsection{\texorpdfstring{Debug\+Box\+Out()}{DebugBoxOut()}}
{\footnotesize\ttfamily virtual void sc2\+::\+Debug\+Interface\+::\+Debug\+Box\+Out (\begin{DoxyParamCaption}\item[{const \hyperlink{structsc2_1_1_point3_d}{Point3D} \&}]{p\+\_\+min,  }\item[{const \hyperlink{structsc2_1_1_point3_d}{Point3D} \&}]{p\+\_\+max,  }\item[{\hyperlink{structsc2_1_1_color}{Color}}]{color = {\ttfamily Colors\+:\+:White} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}

Outputs a box specified as two 3D points in the game world. Map coordinates are used. 
\begin{DoxyParams}{Parameters}
{\em p0} & One corner of the box. \\
\hline
{\em p1} & The far corner of the box. \\
\hline
{\em color} & (Optional) \hyperlink{structsc2_1_1_color}{Color} of the lines. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classsc2_1_1_debug_interface_a74f53226964fac1ff67f071b09497a8a}\label{classsc2_1_1_debug_interface_a74f53226964fac1ff67f071b09497a8a}} 
\index{sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}!Debug\+Create\+Unit@{Debug\+Create\+Unit}}
\index{Debug\+Create\+Unit@{Debug\+Create\+Unit}!sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}}
\subsubsection{\texorpdfstring{Debug\+Create\+Unit()}{DebugCreateUnit()}}
{\footnotesize\ttfamily virtual void sc2\+::\+Debug\+Interface\+::\+Debug\+Create\+Unit (\begin{DoxyParamCaption}\item[{\hyperlink{classsc2_1_1_s_c2_type}{Unit\+Type\+ID}}]{unit\+\_\+type,  }\item[{const \hyperlink{structsc2_1_1_point2_d}{Point2D} \&}]{p,  }\item[{uint32\+\_\+t}]{player\+\_\+id = {\ttfamily 1},  }\item[{uint32\+\_\+t}]{count = {\ttfamily 1} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}

Creates a unit at the given position. 
\begin{DoxyParams}{Parameters}
{\em unit\+\_\+type} & Type of unit to create. \\
\hline
{\em p} & Position to create the unit at. \\
\hline
{\em player\+\_\+id} & Player the unit should belong to. \\
\hline
{\em count} & Number of units to create. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classsc2_1_1_debug_interface_afba1e9cbd642833e0de4360aba7ff08e}\label{classsc2_1_1_debug_interface_afba1e9cbd642833e0de4360aba7ff08e}} 
\index{sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}!Debug\+End\+Game@{Debug\+End\+Game}}
\index{Debug\+End\+Game@{Debug\+End\+Game}!sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}}
\subsubsection{\texorpdfstring{Debug\+End\+Game()}{DebugEndGame()}}
{\footnotesize\ttfamily virtual void sc2\+::\+Debug\+Interface\+::\+Debug\+End\+Game (\begin{DoxyParamCaption}\item[{bool}]{victory = {\ttfamily false} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}

Ends a game. 
\begin{DoxyParams}{Parameters}
{\em victory} & If true, this player is victorious. If false, this player surrenders. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classsc2_1_1_debug_interface_afc45d89e7cd2bc02c9be1808a0041be2}\label{classsc2_1_1_debug_interface_afc45d89e7cd2bc02c9be1808a0041be2}} 
\index{sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}!Debug\+Kill\+Unit@{Debug\+Kill\+Unit}}
\index{Debug\+Kill\+Unit@{Debug\+Kill\+Unit}!sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}}
\subsubsection{\texorpdfstring{Debug\+Kill\+Unit()}{DebugKillUnit()}}
{\footnotesize\ttfamily virtual void sc2\+::\+Debug\+Interface\+::\+Debug\+Kill\+Unit (\begin{DoxyParamCaption}\item[{Tag}]{tag }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}

Destroy a unit. 
\begin{DoxyParams}{Parameters}
{\em tag} & \hyperlink{classsc2_1_1_unit}{Unit} to destroy. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classsc2_1_1_debug_interface_a3d2232ee51265c7b97f7692ec7918ca1}\label{classsc2_1_1_debug_interface_a3d2232ee51265c7b97f7692ec7918ca1}} 
\index{sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}!Debug\+Line\+Out@{Debug\+Line\+Out}}
\index{Debug\+Line\+Out@{Debug\+Line\+Out}!sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}}
\subsubsection{\texorpdfstring{Debug\+Line\+Out()}{DebugLineOut()}}
{\footnotesize\ttfamily virtual void sc2\+::\+Debug\+Interface\+::\+Debug\+Line\+Out (\begin{DoxyParamCaption}\item[{const \hyperlink{structsc2_1_1_point3_d}{Point3D} \&}]{p0,  }\item[{const \hyperlink{structsc2_1_1_point3_d}{Point3D} \&}]{p1,  }\item[{\hyperlink{structsc2_1_1_color}{Color}}]{color = {\ttfamily Colors\+:\+:White} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}

Outputs a line between two 3D points in the game world. Map coordinates are used. 
\begin{DoxyParams}{Parameters}
{\em p0} & The starting position of the line. \\
\hline
{\em p1} & The ending position of the line. \\
\hline
{\em color} & (Optional) \hyperlink{structsc2_1_1_color}{Color} of the line. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classsc2_1_1_debug_interface_aafe669615586b51805c6bf3e9cef7bf1}\label{classsc2_1_1_debug_interface_aafe669615586b51805c6bf3e9cef7bf1}} 
\index{sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}!Debug\+Move\+Camera@{Debug\+Move\+Camera}}
\index{Debug\+Move\+Camera@{Debug\+Move\+Camera}!sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}}
\subsubsection{\texorpdfstring{Debug\+Move\+Camera()}{DebugMoveCamera()}}
{\footnotesize\ttfamily virtual void sc2\+::\+Debug\+Interface\+::\+Debug\+Move\+Camera (\begin{DoxyParamCaption}\item[{const \hyperlink{structsc2_1_1_point2_d}{Point2D} \&}]{pos }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}

Sets the position of the camera. 
\begin{DoxyParams}{Parameters}
{\em pos} & The camera position in world space. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classsc2_1_1_debug_interface_a3049f5181825a014b8f05c75af8c254b}\label{classsc2_1_1_debug_interface_a3049f5181825a014b8f05c75af8c254b}} 
\index{sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}!Debug\+Set\+Energy@{Debug\+Set\+Energy}}
\index{Debug\+Set\+Energy@{Debug\+Set\+Energy}!sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}}
\subsubsection{\texorpdfstring{Debug\+Set\+Energy()}{DebugSetEnergy()}}
{\footnotesize\ttfamily virtual void sc2\+::\+Debug\+Interface\+::\+Debug\+Set\+Energy (\begin{DoxyParamCaption}\item[{float}]{value,  }\item[{Tag}]{tag }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}

Sets the energy level on a unit. 
\begin{DoxyParams}{Parameters}
{\em value} & The new energy level. \\
\hline
{\em tag} & The unit. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classsc2_1_1_debug_interface_aebec7aae013f15f2791dd17af6d9e320}\label{classsc2_1_1_debug_interface_aebec7aae013f15f2791dd17af6d9e320}} 
\index{sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}!Debug\+Set\+Life@{Debug\+Set\+Life}}
\index{Debug\+Set\+Life@{Debug\+Set\+Life}!sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}}
\subsubsection{\texorpdfstring{Debug\+Set\+Life()}{DebugSetLife()}}
{\footnotesize\ttfamily virtual void sc2\+::\+Debug\+Interface\+::\+Debug\+Set\+Life (\begin{DoxyParamCaption}\item[{float}]{value,  }\item[{Tag}]{tag }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}

Sets the life on a unit. 
\begin{DoxyParams}{Parameters}
{\em value} & The new life. \\
\hline
{\em tag} & The unit. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classsc2_1_1_debug_interface_a003a4d12d81cfb02078623b255b16d17}\label{classsc2_1_1_debug_interface_a003a4d12d81cfb02078623b255b16d17}} 
\index{sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}!Debug\+Set\+Shields@{Debug\+Set\+Shields}}
\index{Debug\+Set\+Shields@{Debug\+Set\+Shields}!sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}}
\subsubsection{\texorpdfstring{Debug\+Set\+Shields()}{DebugSetShields()}}
{\footnotesize\ttfamily virtual void sc2\+::\+Debug\+Interface\+::\+Debug\+Set\+Shields (\begin{DoxyParamCaption}\item[{float}]{value,  }\item[{Tag}]{tag }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}

Sets shields on a unit. 
\begin{DoxyParams}{Parameters}
{\em value} & The new shields. \\
\hline
{\em tag} & The unit. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classsc2_1_1_debug_interface_a9c4b50b0c3b07cd77c4b9c98afc689b0}\label{classsc2_1_1_debug_interface_a9c4b50b0c3b07cd77c4b9c98afc689b0}} 
\index{sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}!Debug\+Sphere\+Out@{Debug\+Sphere\+Out}}
\index{Debug\+Sphere\+Out@{Debug\+Sphere\+Out}!sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}}
\subsubsection{\texorpdfstring{Debug\+Sphere\+Out()}{DebugSphereOut()}}
{\footnotesize\ttfamily virtual void sc2\+::\+Debug\+Interface\+::\+Debug\+Sphere\+Out (\begin{DoxyParamCaption}\item[{const \hyperlink{structsc2_1_1_point3_d}{Point3D} \&}]{p,  }\item[{float}]{r,  }\item[{\hyperlink{structsc2_1_1_color}{Color}}]{color = {\ttfamily Colors\+:\+:White} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}

Outputs a sphere specified as a 3D point in the game world and a radius. Map coordinates are used. 
\begin{DoxyParams}{Parameters}
{\em p} & Center of the sphere. \\
\hline
{\em r} & Radius of the sphere. \\
\hline
{\em color} & (Optional) \hyperlink{structsc2_1_1_color}{Color} of the lines. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classsc2_1_1_debug_interface_a9a6fd0d4719dea83de3f5e374127a1da}\label{classsc2_1_1_debug_interface_a9a6fd0d4719dea83de3f5e374127a1da}} 
\index{sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}!Debug\+Test\+App@{Debug\+Test\+App}}
\index{Debug\+Test\+App@{Debug\+Test\+App}!sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}}
\subsubsection{\texorpdfstring{Debug\+Test\+App()}{DebugTestApp()}}
{\footnotesize\ttfamily virtual void sc2\+::\+Debug\+Interface\+::\+Debug\+Test\+App (\begin{DoxyParamCaption}\item[{App\+Test}]{app\+\_\+test,  }\item[{int}]{delay\+\_\+ms = {\ttfamily 0} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}

Cause the game to fail; useful to test library behavior. 
\begin{DoxyParams}{Parameters}
{\em app\+\_\+test} & State to put the game into. \\
\hline
{\em delay\+\_\+ms} & Time to elapse before invoking the game state. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classsc2_1_1_debug_interface_a3edaf8b4f0e0155f3b8eaf2cf672ee29}\label{classsc2_1_1_debug_interface_a3edaf8b4f0e0155f3b8eaf2cf672ee29}} 
\index{sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}!Debug\+Text\+Out@{Debug\+Text\+Out}}
\index{Debug\+Text\+Out@{Debug\+Text\+Out}!sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}}
\subsubsection{\texorpdfstring{Debug\+Text\+Out()}{DebugTextOut()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}}
{\footnotesize\ttfamily virtual void sc2\+::\+Debug\+Interface\+::\+Debug\+Text\+Out (\begin{DoxyParamCaption}\item[{const std\+::string \&}]{out,  }\item[{\hyperlink{structsc2_1_1_color}{Color}}]{color = {\ttfamily Colors\+:\+:White} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}

Outputs text at the top, left of the screen. 
\begin{DoxyParams}{Parameters}
{\em out} & The string of text to display. \\
\hline
{\em color} & (Optional) \hyperlink{structsc2_1_1_color}{Color} of the text. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classsc2_1_1_debug_interface_a5044b5772c931b1115fd3ec40682a257}\label{classsc2_1_1_debug_interface_a5044b5772c931b1115fd3ec40682a257}} 
\index{sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}!Debug\+Text\+Out@{Debug\+Text\+Out}}
\index{Debug\+Text\+Out@{Debug\+Text\+Out}!sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}}
\subsubsection{\texorpdfstring{Debug\+Text\+Out()}{DebugTextOut()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}}
{\footnotesize\ttfamily virtual void sc2\+::\+Debug\+Interface\+::\+Debug\+Text\+Out (\begin{DoxyParamCaption}\item[{const std\+::string \&}]{out,  }\item[{const \hyperlink{structsc2_1_1_point2_d}{Point2D} \&}]{pt\+\_\+virtual\+\_\+2D,  }\item[{\hyperlink{structsc2_1_1_color}{Color}}]{color = {\ttfamily Colors\+:\+:White} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}

Outputs text at any 2D point on the screen. Coordinate ranges are 0..1 in X and Y. 
\begin{DoxyParams}{Parameters}
{\em out} & The string of text to display. \\
\hline
{\em pt\+\_\+virtual\+\_\+2D} & The screen position to draw text at. \\
\hline
{\em color} & (Optional) \hyperlink{structsc2_1_1_color}{Color} of the text. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classsc2_1_1_debug_interface_a8037bf4a4941d49c372c6e73dfe4663c}\label{classsc2_1_1_debug_interface_a8037bf4a4941d49c372c6e73dfe4663c}} 
\index{sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}!Debug\+Text\+Out@{Debug\+Text\+Out}}
\index{Debug\+Text\+Out@{Debug\+Text\+Out}!sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}}
\subsubsection{\texorpdfstring{Debug\+Text\+Out()}{DebugTextOut()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}}
{\footnotesize\ttfamily virtual void sc2\+::\+Debug\+Interface\+::\+Debug\+Text\+Out (\begin{DoxyParamCaption}\item[{const std\+::string \&}]{out,  }\item[{const \hyperlink{structsc2_1_1_point3_d}{Point3D} \&}]{pt3D,  }\item[{\hyperlink{structsc2_1_1_color}{Color}}]{color = {\ttfamily Colors\+:\+:White} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}

Outputs text at any 3D point in the game world. Map coordinates are used. 
\begin{DoxyParams}{Parameters}
{\em out} & The string of text to display. \\
\hline
{\em pt3D} & The world position to draw text at. \\
\hline
{\em color} & (Optional) \hyperlink{structsc2_1_1_color}{Color} of the text. \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{classsc2_1_1_debug_interface_ae08bd0e07c9ed54c61a2f35225b2efb5}\label{classsc2_1_1_debug_interface_ae08bd0e07c9ed54c61a2f35225b2efb5}} 
\index{sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}!Send\+Debug@{Send\+Debug}}
\index{Send\+Debug@{Send\+Debug}!sc2\+::\+Debug\+Interface@{sc2\+::\+Debug\+Interface}}
\subsubsection{\texorpdfstring{Send\+Debug()}{SendDebug()}}
{\footnotesize\ttfamily virtual void sc2\+::\+Debug\+Interface\+::\+Send\+Debug (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [pure virtual]}}

Dispatch all queued debug commands. No debug commands will be sent until this is called. This will also clear or set new debug primitives like text and lines. 

The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
include/sc2api/\hyperlink{sc2__interfaces_8h}{sc2\+\_\+interfaces.\+h}\end{DoxyCompactItemize}
